package com.typhoon.springboot_demo1.util;

import java.util.List;
import java.util.Map;

public interface CommonDao<E, K> {

	public E queryByPrimaryKey(K k,Class<E> clazz);

	public int save(E paramE);

	public int saveBatch(List<? extends E> paramList);

	public int updateByPrimaryKey(E paramE);

	public int updateBatch(List<E> paramList);

	public int deleteByPK(K paramK);

	public int deleteBatchByPK(List<K> paramList);

	public int delete(E paramE);

	public int deleteBatch(E paramE);

	public E get(Object paramObject,Class<E> clazz);

	public List<E> list(Map<String, Object> paramMap,Class<E> clazz);

	public List<E> list(Object paramObject,Class<E> clazz);

	public List<E> listCascade(Object paramObject);

	public long count(Map<String, Object> paramMap);

	public long count(Object paramObject);

}
